package com.gxa.learning.pc.mapper;

import com.gxa.learning.core.pojo.Role;
import com.gxa.learning.core.pojo.RoleMenuVO;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

/**
 * @author lijianmin
 * @date 2021/12/07  20:56:30
 */
public interface RoleMapper extends Mapper<Role> {
    /**
     * 根据条件搜索的方法
     *
     * @param roleName   角色名称
     * @param company    公司名称
     * @param department 部门名称
     * @param state      角色状态
     * @return 返回查询到的集合
     */
    List<RoleMenuVO> selectByLike(String roleName, String company, String department, Boolean state);

    /**
     * 根据id删除角色的接口
     *
     * @param id 删除的角色ID
     * @return 返回消息
     */
    Integer deleteById(Long id);

    /**
     * 添加角色的方法
     *
     * @param role 添加的字段
     * @return 返回消息
     */
    Integer add(Role role);

    /**
     * 修改角色状态的方法
     *
     * @param state 角色的状态
     * @param id    角色的ID
     * @return 返回影响行数
     */
    Integer updateState(Boolean state, Long id);

}
